package com.love.marriage.datingRegistrationInfo.vo;

import cn.afterturn.easypoi.excel.annotation.Excel;
import cn.afterturn.easypoi.excel.annotation.ExcelTarget;
import com.love.marriage.common.vo.BaseVo;
import io.swagger.v3.oas.annotations.media.Schema;
import lombok.Getter;
import lombok.Setter;
import lombok.experimental.Accessors;

import java.math.BigDecimal;
import java.time.LocalDateTime;

/**
 * description:  约会报名表Vo
 * author:       mybatisPlus
 * createDate:   2024-10-15 23:02:33
 * version:      1.0.0
 */
@Getter
@Setter
@Accessors(chain = true)
@ExcelTarget("DatingRegistrationInfoExportVo")
@Schema(name = "DatingRegistrationInfoExportVo", description = "约会报名表Vo")
public class DatingRegistrationInfoExportVo extends BaseVo<DatingRegistrationInfoExportVo> {

    @Excel(name = "约会id")
    private Long datingId;

    @Excel(name = "约会内容", orderNum = "1")
    private String datingContent;

    @Excel(name = "约会时间", orderNum = "2", format = "YYYY-MM-dd HH:mm")
    private LocalDateTime datingTime;

    @Excel(name = "报名人编码", orderNum = "3")
    private String code;

    @Excel(name = "报名人昵称", orderNum = "4")
    private String nickname;

    @Excel(name = "性别", orderNum = "5")
    private String gender;

    @Excel(name = "报名人年龄", orderNum = "6")
    private Integer age;

    @Excel(name = "体重", orderNum = "7")
    private BigDecimal weight;

    @Excel(name = "身高", orderNum = "8")
    private BigDecimal height;

    @Excel(name = "职业", orderNum = "9")
    private String professionName;

    @Excel(name = "收入", orderNum = "10")
    private String incomeStatusName;

    @Excel(name = "地区", orderNum = "11")
    private String region;

    @Excel(name = "名字", orderNum = "12")
    private String name;

    @Excel(name = "身份证号", orderNum = "13")
    private String idCardNumber;

    @Excel(name = "报名人电话", orderNum = "14")
    private String phone;

    @Excel(name = "报名时间", orderNum = "15", format = "YYYY-MM-dd HH:mm")
    private LocalDateTime registrationTime;

    @Excel(name = "报名支付金额", orderNum = "16")
    private BigDecimal payAmount;

    // --- 以下为“用户择偶要求表(user_partner_preferences_t)”导出列 ---
    @Schema(description = "理想年龄范围起始值")
    @Excel(name = "择偶-年龄起", orderNum = "17")
    private Integer prefAgeFrom;

    @Schema(description = "理想年龄范围结束值")
    @Excel(name = "择偶-年龄止", orderNum = "18")
    private Integer prefAgeTo;

    @Schema(description = "理想身高范围起始值（cm）")
    @Excel(name = "择偶-身高起(cm)", orderNum = "19")
    private BigDecimal prefHeightFrom;

    @Schema(description = "理想身高范围结束值（cm）")
    @Excel(name = "择偶-身高止(cm)", orderNum = "20")
    private BigDecimal prefHeightTo;

    @Schema(description = "理想体重范围起始值（kg）")
    @Excel(name = "择偶-体重起(kg)", orderNum = "21")
    private BigDecimal prefWeightFrom;

    @Schema(description = "理想体重范围结束值（kg）")
    @Excel(name = "择偶-体重止(kg)", orderNum = "22")
    private BigDecimal prefWeightTo;

    @Schema(description = "理想学历")
    @Excel(name = "择偶-学历", orderNum = "23")
    private String prefEducationLevel;

    @Schema(description = "理想职业")
    @Excel(name = "择偶-职业", orderNum = "24")
    private String prefProfession;

    @Schema(description = "理想收入范围")
    @Excel(name = "择偶-收入范围", orderNum = "25")
    private String prefIncomeRange;

    @Schema(description = "理想车房情况")
    @Excel(name = "择偶-车房情况", orderNum = "26")
    private String prefHousingCarStatus;

    @Schema(description = "理想婚姻状况")
    @Excel(name = "择偶-婚姻状况", orderNum = "27")
    private String prefMaritalStatus;

    @Schema(description = "省名称")
    private String prefProvinceName;
    @Schema(description = "市名称")
    private String prefCityName;
    @Schema(description = "区名称")
    private String prefDistrictName;

    @Excel(name = "择偶-地区", orderNum = "28")
    private String prefRegion;
}
